home *** CD-ROM | disk | FTP | other *** search
- /*
- ** $VER: sound.e V0.8B
- **
- ** Sound definitions.
- **
- ** (C) Copyright 1996-1997 DreamWorld Productions.
- ** All Rights Reserved
- */
-
- OPT MODULE
- OPT EXPORT
- OPT PREPROCESS
-
- MODULE 'games/games'
-
- /****************************************************************************
- ** Sound Object.
- */
-
- CONST SMVERSION = 1
-
- OBJECT sound
- head[1] :ARRAY OF head
- channel :INT -> Channel, 0-3
- priority :INT -> Priority, 0-127
- header :LONG -> Ptr to sample info header, if any
- data :LONG -> Address of sample data
- length :LONG -> Length of sample data in WORDS
- octave :INT -> Octave/Note setting
- volume :INT -> Volume of sample (1 - 100)
- attrib :LONG -> Sound attributes.
- source :LONG -> Where the sound comes from.
- frequency :LONG -> Frequency of sampled sound.
- ENDOBJECT
-
- CONST SA_CHANNEL = $40000000+12,
- SA_PRIORITY = $40000000+14,
- SA_HEADER = $C0000000+16,
- SA_DATA = $C0000000+20,
- SA_LENGTH = $80000000+24,
- SA_OCTAVE = $40000000+28,
- SA_VOLUME = $40000000+30,
- SA_ATTRIB = $80000000+32,
- SA_SOURCE = $C0000000+36,
- SA_FREQUENCY = $80000000+40
-
- -> Flags for SAM_Channel
-
- CONST ALLCHANNELS = -1, -> Search for first available channel
- CHANNEL1 = 0, -> Channel 1 (left speaker)
- CHANNEL2 = 1, -> Channel 2 (right speaker)
- CHANNEL3 = 2, -> Channel 3 (left speaker)
- CHANNEL4 = 3 -> Channel 4 (right speaker)
-
- -> Flags for SAM_Attrib
-
- CONST SBIT8 = $00000000, -> Sound data is 8 bit (set if raw)
- SBIT16 = $00000001, -> Sound data is 16 bit (set if raw)
- SMODVOL = $00000002, -> Modulate volume with next channel
- SMODPER = $00000004, -> Modulate period with next channel
- SREPEAT = $00000008, -> Repeat sample forever
- SEMPTY = $00000010, -> Play only if channel is empty
- SLEFT = $00000020, -> Left speaker preferred.
- SRIGHT = $00000040, -> Right speaker preferred.
- SFORCE = $00000080 -> Enforce use of selected speaker.
-
- -> Octave definitions for Sound.Octave. An 'S' at the end of an octave
- -> definition indicates a sharp note.
-
- CONST OCT_G0S = 0,
- OCT_G0 = 2,
- OCT_F0S = 4,
- OCT_F0 = 6,
- OCT_E0 = 8,
- OCT_D0S = 10,
- OCT_D0 = 12,
- OCT_C0S = 14,
- OCT_C0 = 16,
- OCT_B0 = 18,
- OCT_A0S = 20,
- OCT_A0 = 22,
-
- OCT_G1S = 24,
- OCT_G1 = 26,
- OCT_F1S = 28,
- OCT_F1 = 30,
- OCT_E1 = 32,
- OCT_D1S = 34,
- OCT_D1 = 36,
- OCT_C1S = 38,
- OCT_C1 = 40,
- OCT_B1 = 42,
- OCT_A1S = 44,
- OCT_A1 = 46,
-
- OCT_G2S = 48,
- OCT_G2 = 50,
- OCT_F2S = 52,
- OCT_F2 = 54,
- OCT_E2 = 56,
- OCT_D2S = 58,
- OCT_D2 = 60,
- OCT_C2S = 62,
- OCT_C2 = 64,
- OCT_B2 = 66,
- OCT_A2S = 68,
- OCT_A2 = 70,
-
- OCT_G3S = 72,
- OCT_G3 = 74,
- OCT_F3S = 76,
- OCT_F3 = 78,
- OCT_E3 = 80,
- OCT_D3S = 82,
- OCT_D3 = 84,
- OCT_C3S = 86,
- OCT_C3 = 88,
- OCT_B3 = 90,
- OCT_A3S = 92,
- OCT_A3 = 94,
-
- OCT_G4S = 96,
- OCT_G4 = 98,
- OCT_F4S = 100,
- OCT_F4 = 102,
- OCT_E4 = 104,
- OCT_D4S = 106,
- OCT_D4 = 108,
- OCT_C4S = 110,
- OCT_C4 = 112,
- OCT_B4 = 114,
- OCT_A4S = 116,
- OCT_A4 = 118,
-
- OCT_G5S = 120,
- OCT_G5 = 122,
- OCT_F5S = 124,
- OCT_F5 = 126,
- OCT_E5 = 128,
- OCT_D5S = 130,
- OCT_D5 = 132,
- OCT_C5S = 134,
- OCT_C5 = 136,
- OCT_B5 = 138,
- OCT_A5S = 140,
- OCT_A5 = 142,
-
- OCT_G6S = 144,
- OCT_G6 = 146,
- OCT_F6S = 148,
- OCT_F6 = 150,
- OCT_E6 = 152,
- OCT_D6S = 154,
- OCT_D6 = 156,
- OCT_C6S = 158,
- OCT_C6 = 160,
- OCT_B6 = 162,
- OCT_A6S = 164,
- OCT_A6 = 166,
-
- OCT_G7S = 168,
- OCT_G7 = 170,
- OCT_F7S = 172,
- OCT_F7 = 174,
- OCT_E7 = 176,
- OCT_D7S = 178,
- OCT_D7 = 180,
- OCT_C7S = 182,
- OCT_C7 = 184,
- OCT_B7 = 186,
- OCT_A7S = 188
-
-